\hypertarget{class_file}{\section{File类 参考}
\label{class_file}\index{File@{File}}
}


文件类  




{\ttfamily \#include $<$File.\+h$>$}

类 File 继承关系图\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_file}
\end{center}
\end{figure}
\subsection*{Public 成员函数}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_file_ae039af5807fc385f41b60644725d15d0}{File} ()
\begin{DoxyCompactList}\small\item\em File构造函数 \end{DoxyCompactList}\item 
\hypertarget{class_file_a03e9a7af98449e967da0bce822691b6d}{{\bfseries File} (const std\+::string file\+Name, sint32 io\+Mode)}\label{class_file_a03e9a7af98449e967da0bce822691b6d}

\item 
virtual sint32 \hyperlink{class_file_a50677171d2d118707a394c6d8480fd14}{open} (const char $\ast$file\+Name, sint32 io\+Mode)
\begin{DoxyCompactList}\small\item\em 打开文件 \end{DoxyCompactList}\item 
virtual sint32 \hyperlink{class_file_aabaf3655ddb4e02ea3e2cf5dcdae9391}{close} ()
\begin{DoxyCompactList}\small\item\em 关闭文件 \end{DoxyCompactList}\item 
virtual sint32 \hyperlink{class_file_acc4f13b8aa0bd807cd04a760a3307883}{read\+Data} (char $\ast$buf, sint32 count, sint32 timeout\+Ms=-\/1)
\begin{DoxyCompactList}\small\item\em 读取数据 \end{DoxyCompactList}\item 
virtual sint32 \hyperlink{class_file_aa5734005c02e9ff422a10ea23a887c64}{write\+Data} (const char $\ast$buf, sint32 count, sint32 timeout\+Ms=-\/1)
\begin{DoxyCompactList}\small\item\em 写入数据 \end{DoxyCompactList}\item 
virtual sint32 \hyperlink{class_file_af71959af78983c4cd0e6a3dd8f262b8b}{set\+Attribute} (sint32 attr, sint32 value)
\begin{DoxyCompactList}\small\item\em 设置属性 \end{DoxyCompactList}\item 
virtual sint32 \hyperlink{class_file_a18d35277983223591f1d2f3513b91c2c}{get\+Attribute} (sint32 attr)
\begin{DoxyCompactList}\small\item\em 读取属性 \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{class_file_a27b9a220e5178174b0e3cfab7e93e8a4}{map\+Memory} ()
\begin{DoxyCompactList}\small\item\em 将文件映射到内存 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a1570e9a2cd280f43b53478f93cf0d55d}{unmap\+Memory} ()
\begin{DoxyCompactList}\small\item\em 解除文件内存映射 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a27c733cf7c46adb52193a125e383d43f}{read\+Line} (std\+::string \&line\+Str)
\begin{DoxyCompactList}\small\item\em 读取一行数据 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a2f89b8ebe861302af393e67bfcd5cca8}{get\+Size} ()
\begin{DoxyCompactList}\small\item\em 获取文件大小 \end{DoxyCompactList}\item 
std\+::string \hyperlink{class_file_a9e324b9cb28fc557b92901f2481ce0fb}{get\+Name} ()
\begin{DoxyCompactList}\small\item\em 获取文件名称 \end{DoxyCompactList}\item 
F\+I\+L\+E $\ast$ \hyperlink{class_file_a338c00e6b120d72276bcd23834107fac}{get\+Fp} ()
\begin{DoxyCompactList}\small\item\em 获取文件句柄 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a61d8d4362419a50b3583f9bc66967c54}{get\+Fd} ()
\begin{DoxyCompactList}\small\item\em 获取文件描述符 \end{DoxyCompactList}\item 
bool \hyperlink{class_file_ae405a9cb0b035553be7fafef53041daf}{is\+End} ()
\begin{DoxyCompactList}\small\item\em 判断是否已经到文件尾部 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a00afbd8a2fccab897a7cc33516e0e73d}{get\+Pos} ()
\begin{DoxyCompactList}\small\item\em 获取当前读写位置 \end{DoxyCompactList}\item 
sint32 \hyperlink{class_file_a57efa4841cef95ba4f7b872f79f85cf9}{set\+Pos} (sint32 pos)
\begin{DoxyCompactList}\small\item\em 设置当前读写位置 \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{静态 Public 成员函数}
\begin{DoxyCompactItemize}
\item 
static bool \hyperlink{class_file_a1591f333f18f94a7d2239b428d66af6a}{is\+Dir\+Empty} (const char $\ast$dir\+Name)
\begin{DoxyCompactList}\small\item\em 判断目录是否为空 \end{DoxyCompactList}\item 
static bool \hyperlink{class_file_abbe554337807475130c58883da57fbb6}{is\+Exist} (const char $\ast$file\+Name)
\begin{DoxyCompactList}\small\item\em 判断文件或文件夹是否存在 \end{DoxyCompactList}\item 
static sint32 \hyperlink{class_file_aa8e5fba482c6df8c78cc53f5d16493c9}{get\+Content\+Size} (const char $\ast$file\+Name)
\begin{DoxyCompactList}\small\item\em 获取内容大小 \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{额外继承的成员函数}


\subsection{详细描述}
文件类 

\subsection{构造及析构函数说明}
\hypertarget{class_file_ae039af5807fc385f41b60644725d15d0}{\index{File@{File}!File@{File}}
\index{File@{File}!File@{File}}
\subsubsection[{File}]{\setlength{\rightskip}{0pt plus 5cm}File\+::\+File (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_ae039af5807fc385f41b60644725d15d0}


File构造函数 


\begin{DoxyParams}{参数}
{\em none} & \\
\hline
\end{DoxyParams}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}


\subsection{成员函数说明}
\hypertarget{class_file_aabaf3655ddb4e02ea3e2cf5dcdae9391}{\index{File@{File}!close@{close}}
\index{close@{close}!File@{File}}
\subsubsection[{close}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::close (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_aabaf3655ddb4e02ea3e2cf5dcdae9391}


关闭文件 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
文件关闭成功返回\+S\+T\+A\+T\+U\+S\+\_\+\+O\+K,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}


重载 \hyperlink{class_i_o_device_a1120c9e7a7c4d0b23083effbe4cb6279}{I\+O\+Device} .

\hypertarget{class_file_a18d35277983223591f1d2f3513b91c2c}{\index{File@{File}!get\+Attribute@{get\+Attribute}}
\index{get\+Attribute@{get\+Attribute}!File@{File}}
\subsubsection[{get\+Attribute}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::get\+Attribute (
\begin{DoxyParamCaption}
\item[{sint32}]{attr}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_a18d35277983223591f1d2f3513b91c2c}


读取属性 

\begin{DoxyReturn}{返回}
返回0或1表示该属性值 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
File只支持可读及可写两个属性 
\end{DoxyNote}


实现了 \hyperlink{class_i_o_device}{I\+O\+Device}.

\hypertarget{class_file_aa8e5fba482c6df8c78cc53f5d16493c9}{\index{File@{File}!get\+Content\+Size@{get\+Content\+Size}}
\index{get\+Content\+Size@{get\+Content\+Size}!File@{File}}
\subsubsection[{get\+Content\+Size}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::get\+Content\+Size (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{file\+Name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{class_file_aa8e5fba482c6df8c78cc53f5d16493c9}


获取内容大小 


\begin{DoxyParams}{参数}
{\em file\+Path} & 文件名或文件夹名 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
返回文件或文件夹的大小 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a61d8d4362419a50b3583f9bc66967c54}{\index{File@{File}!get\+Fd@{get\+Fd}}
\index{get\+Fd@{get\+Fd}!File@{File}}
\subsubsection[{get\+Fd}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::get\+Fd (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a61d8d4362419a50b3583f9bc66967c54}


获取文件描述符 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
返回当前文件描述符 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a338c00e6b120d72276bcd23834107fac}{\index{File@{File}!get\+Fp@{get\+Fp}}
\index{get\+Fp@{get\+Fp}!File@{File}}
\subsubsection[{get\+Fp}]{\setlength{\rightskip}{0pt plus 5cm}F\+I\+L\+E $\ast$ File\+::get\+Fp (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a338c00e6b120d72276bcd23834107fac}


获取文件句柄 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
返回当前文件句柄(\+F\+I\+L\+E$\ast$) 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a9e324b9cb28fc557b92901f2481ce0fb}{\index{File@{File}!get\+Name@{get\+Name}}
\index{get\+Name@{get\+Name}!File@{File}}
\subsubsection[{get\+Name}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string File\+::get\+Name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a9e324b9cb28fc557b92901f2481ce0fb}


获取文件名称 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
返回当前文件名称 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a00afbd8a2fccab897a7cc33516e0e73d}{\index{File@{File}!get\+Pos@{get\+Pos}}
\index{get\+Pos@{get\+Pos}!File@{File}}
\subsubsection[{get\+Pos}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::get\+Pos (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a00afbd8a2fccab897a7cc33516e0e73d}


获取当前读写位置 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回当前读写位置,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a2f89b8ebe861302af393e67bfcd5cca8}{\index{File@{File}!get\+Size@{get\+Size}}
\index{get\+Size@{get\+Size}!File@{File}}
\subsubsection[{get\+Size}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::get\+Size (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a2f89b8ebe861302af393e67bfcd5cca8}


获取文件大小 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回文件大小,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a1591f333f18f94a7d2239b428d66af6a}{\index{File@{File}!is\+Dir\+Empty@{is\+Dir\+Empty}}
\index{is\+Dir\+Empty@{is\+Dir\+Empty}!File@{File}}
\subsubsection[{is\+Dir\+Empty}]{\setlength{\rightskip}{0pt plus 5cm}bool File\+::is\+Dir\+Empty (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{dir\+Name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{class_file_a1591f333f18f94a7d2239b428d66af6a}


判断目录是否为空 


\begin{DoxyParams}{参数}
{\em dir\+Name} & 目录全名(如\+:/usr/share) \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
目录为空或不存在返回true,不为空则返回false 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_ae405a9cb0b035553be7fafef53041daf}{\index{File@{File}!is\+End@{is\+End}}
\index{is\+End@{is\+End}!File@{File}}
\subsubsection[{is\+End}]{\setlength{\rightskip}{0pt plus 5cm}bool File\+::is\+End (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_ae405a9cb0b035553be7fafef53041daf}


判断是否已经到文件尾部 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
是返回true,否返回false 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_abbe554337807475130c58883da57fbb6}{\index{File@{File}!is\+Exist@{is\+Exist}}
\index{is\+Exist@{is\+Exist}!File@{File}}
\subsubsection[{is\+Exist}]{\setlength{\rightskip}{0pt plus 5cm}bool File\+::is\+Exist (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{file\+Path}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}}}\label{class_file_abbe554337807475130c58883da57fbb6}


判断文件或文件夹是否存在 


\begin{DoxyParams}{参数}
{\em file\+Path} & 文件名或文件夹名 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
文件存在返回true,否则返回false 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a27b9a220e5178174b0e3cfab7e93e8a4}{\index{File@{File}!map\+Memory@{map\+Memory}}
\index{map\+Memory@{map\+Memory}!File@{File}}
\subsubsection[{map\+Memory}]{\setlength{\rightskip}{0pt plus 5cm}void $\ast$ File\+::map\+Memory (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a27b9a220e5178174b0e3cfab7e93e8a4}


将文件映射到内存 

\begin{DoxyReturn}{返回}
映射成功返回地址,失败返回\+N\+U\+L\+L 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
在使用map\+Memery时,请不要使用read\+Data,write\+Data这些接口 
\end{DoxyNote}
\hypertarget{class_file_a50677171d2d118707a394c6d8480fd14}{\index{File@{File}!open@{open}}
\index{open@{open}!File@{File}}
\subsubsection[{open}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::open (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{file\+Name, }
\item[{sint32}]{io\+Mode}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_a50677171d2d118707a394c6d8480fd14}


打开文件 


\begin{DoxyParams}{参数}
{\em file\+Name} & 文件全名(包含路径,如\+:/etc/init.d/rc\+S) \\
\hline
{\em io\+Mode} & 打开模式\+I\+O\+\_\+\+M\+O\+D\+E\+\_\+\+E \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
文件打开成功返回\+S\+T\+A\+T\+U\+S\+\_\+\+O\+K,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}


重载 \hyperlink{class_i_o_device_a426aac91300f077d57b1f30c76c7c430}{I\+O\+Device} .

\hypertarget{class_file_acc4f13b8aa0bd807cd04a760a3307883}{\index{File@{File}!read\+Data@{read\+Data}}
\index{read\+Data@{read\+Data}!File@{File}}
\subsubsection[{read\+Data}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::read\+Data (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{buf, }
\item[{sint32}]{count, }
\item[{sint32}]{timeout\+Ms = {\ttfamily -\/1}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_acc4f13b8aa0bd807cd04a760a3307883}


读取数据 


\begin{DoxyParams}{参数}
{\em buf} & 数据缓存 \\
\hline
{\em count} & 要读取的长度 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回读取的数据长度,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}


实现了 \hyperlink{class_i_o_device}{I\+O\+Device}.

\hypertarget{class_file_a27c733cf7c46adb52193a125e383d43f}{\index{File@{File}!read\+Line@{read\+Line}}
\index{read\+Line@{read\+Line}!File@{File}}
\subsubsection[{read\+Line}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::read\+Line (
\begin{DoxyParamCaption}
\item[{std\+::string \&}]{line\+Str}
\end{DoxyParamCaption}
)}}\label{class_file_a27c733cf7c46adb52193a125e383d43f}


读取一行数据 


\begin{DoxyParams}{参数}
{\em line\+Str} & 该行字符串 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回读取的数据长度,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_af71959af78983c4cd0e6a3dd8f262b8b}{\index{File@{File}!set\+Attribute@{set\+Attribute}}
\index{set\+Attribute@{set\+Attribute}!File@{File}}
\subsubsection[{set\+Attribute}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::set\+Attribute (
\begin{DoxyParamCaption}
\item[{sint32}]{attr, }
\item[{sint32}]{value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_af71959af78983c4cd0e6a3dd8f262b8b}


设置属性 

\begin{DoxyReturn}{返回}
S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
File无属性 
\end{DoxyNote}


实现了 \hyperlink{class_i_o_device}{I\+O\+Device}.

\hypertarget{class_file_a57efa4841cef95ba4f7b872f79f85cf9}{\index{File@{File}!set\+Pos@{set\+Pos}}
\index{set\+Pos@{set\+Pos}!File@{File}}
\subsubsection[{set\+Pos}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::set\+Pos (
\begin{DoxyParamCaption}
\item[{sint32}]{pos}
\end{DoxyParamCaption}
)}}\label{class_file_a57efa4841cef95ba4f7b872f79f85cf9}


设置当前读写位置 


\begin{DoxyParams}{参数}
{\em void} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回\+O\+K,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}
\hypertarget{class_file_a1570e9a2cd280f43b53478f93cf0d55d}{\index{File@{File}!unmap\+Memory@{unmap\+Memory}}
\index{unmap\+Memory@{unmap\+Memory}!File@{File}}
\subsubsection[{unmap\+Memory}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::unmap\+Memory (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_file_a1570e9a2cd280f43b53478f93cf0d55d}


解除文件内存映射 

\begin{DoxyReturn}{返回}
成功返回\+S\+T\+A\+T\+U\+S\+\_\+\+O\+K,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+O\+K 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
在使用map\+Memery时,请不要使用read\+Data,write\+Data这些接口 
\end{DoxyNote}
\hypertarget{class_file_aa5734005c02e9ff422a10ea23a887c64}{\index{File@{File}!write\+Data@{write\+Data}}
\index{write\+Data@{write\+Data}!File@{File}}
\subsubsection[{write\+Data}]{\setlength{\rightskip}{0pt plus 5cm}sint32 File\+::write\+Data (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{buf, }
\item[{sint32}]{count, }
\item[{sint32}]{timeout\+Ms = {\ttfamily -\/1}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_file_aa5734005c02e9ff422a10ea23a887c64}


写入数据 


\begin{DoxyParams}{参数}
{\em buf} & 数据缓存 \\
\hline
{\em count} & 要写入的长度 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{返回}
成功返回写入的数据长度,失败返回\+S\+T\+A\+T\+U\+S\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\begin{DoxyNote}{注解}
none 
\end{DoxyNote}


实现了 \hyperlink{class_i_o_device}{I\+O\+Device}.



该类的文档由以下文件生成\+:\begin{DoxyCompactItemize}
\item 
libemb/inc/\hyperlink{_file_8h}{File.\+h}\item 
libemb/src/File.\+cpp\end{DoxyCompactItemize}
